﻿using MediatR;
using SmartProduction.Domain.Ptoduction;
using SmartProduction.ErrorCode;

namespace SmartProduction.Write.API.Application.Commands.SCWorkCommand
{
    public class SCWorkOrderAddCommand:IRequest<APIResult<object>>
    {

        /// <summary>
        /// 工单名称
        /// </summary>
        public string WorkOrderName { get; set; }
        /// <summary>
        /// 工单编号
        /// </summary>
        public string WorkOrderNumber { get; set; }
        /// <summary>
        /// 生产单号--关联生产单号
        /// </summary>
        public int AssociatedProductionOrderNumber { get; set; }
        /// <summary>
        /// 销售订单
        /// </summary>
        public string SalesOrder { get; set; }
        /// <summary>
        /// 关联项目
        /// </summary>
        public string AssociatedProject { get; set; }

        /// <summary>
        /// 工单日期
        /// </summary>
        public DateTime WorkOrderDate { get; set; }
        /// <summary>
        /// 负责人
        /// </summary>
        public string PersoninCharge { get; set; }
        /// <summary>
        /// 所属部门
        /// </summary>
        public string AffiliatedDepartment { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }
        /// <summary>
        /// 附件
        /// </summary>
        public string? WenJian { get; set; }


        /// <summary>
        ///  // 物品名称
        /// </summary>
        public int itemName { get; set; }
        /// <summary>
        /// // 物品编号
        /// </summary>
        public string itemNumber { get; set; }
        /// <summary>
        ///  // 规格型号
        /// </summary>
        public string specification { get; set; }
        /// <summary>
        /// // 单位
        /// </summary>
        public string unit { get; set; }
        /// <summary>
        /// // 物品类别
        /// </summary>
        public string itemCategory { get; set; }
        /// <summary>
        ///  // 物品分类
        /// </summary>
        public string itemClassification { get; set; }
        /// <summary>
        /// // 计划开始时间
        /// </summary>
        public DateTime plannedStartTime { get; set; }
        /// <summary>
        /// // 计划结束时间
        /// </summary>
        public DateTime plannedEndTime { get; set; }
        /// <summary>
        ///  // 计划产量
        /// </summary>
        public int plannedOutput { get; set; }


        /// <summary>
        /// 工序流程
        /// </summary>
        public List<ProcessFlowSheet> processFlowSheets { get; set; }
    }
}
